Systems and devices and methods for initiating communications based on selected content

ABSTRACT

Systems and methods consistent with the disclosure receive as an input content selected from a previous communications session with a first user, receive an input selecting a second user different from the first user, identify an object in the selected content to determine information descriptive for the selected content, initiate a new communications session with the second user, and transmit a message to the second user, including the descriptive information for the selected content.

CROSS-REFERENCE TO RELATED APPLICATIONS

This is a continuation application of application Ser. No. 14/869,368,filed Sep. 29, 2015 (now U.S. Pat. No. 10,164,924), the disclosure ofwhich is incorporated herein by reference.

TECHNICAL FIELD

The present disclosure relates to electronic communications systems and,more particularly, to methods and devices for managing aspects ofcommunications sessions.

BACKGROUND

Electronic communications services have become increasingly important intoday's society. Electronic communications service providers offervarious means for establishing communications sessions between two ormore users. For example, users may communicate using email services,chat services, telephone services, voice or video over IP services, faxservices, and more. When users initiate communications sessions, theyoften have specific purposes in mind. For example, a user may place atelephone call with a particular recipient to discuss a specific emailor a matter raised during an earlier conversation with a third party. Atthe time the call is established, however, the recipient may be unawareof the user's purpose of the call, and usually a period of time iselapsed at the beginning of the call in order to provide the recipientwith the background and the purpose of the call.

A Caller ID is a known electronic communications service that providesrecipients information about the identity of a caller associated withthe device that initiated the communications session. Even though insome cases the recipient may guess the purpose of the call based on theCaller ID information (e.g., when the recipient and the user have asingle pending matter), the Caller ID service provides only a partialsolution. Therefore, there is a need for dynamic system that providesrecipients with information regarding incoming communications sessions.

SUMMARY

In one aspect, the present disclosure is directed to a communicationsdevice for providing recipients with information regardingcommunications sessions. The communications device may includestructures configured to (i) receive from a user an input selection foruse in connection with a communications session, (ii) determineinformation regarding previously exchanged communication, based onselected content, (iii) initiate a communications session with at leastone terminal device associated with a particular recipient, based oncontact information associated with the input selection, and (iv)transmit data to the at least one terminal device associated with theparticular recipient.

In another aspect, the present disclosure is directed to a method forproviding recipients with information regarding communications sessions.The method may include receiving from a user an input selection for usein connection with a communications session. The method may also includeusing selected content to determine information, and using contactinformation associated with the input selection to initiate thecommunications session with at least one terminal device associated witha particular recipient. The method may further include transmitting datato the at least one terminal device associated with the particularrecipient.

In yet another aspect, the present disclosure is directed to a computerprogram embodied in a computer readable medium and executable by aprocessor. The computer program may include instructions enabling theprocessor to provide recipients with information regardingcommunications sessions, receive from a user an input selection for usein connection with a communications session, use selected content todetermine information, and use contact information associated with theinput selection to initiate the communications session with at least oneterminal device associated with a particular recipient. The processormay also transmit data to the at least one terminal device associatedwith the particular recipient.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute partof this disclosure, together with the description, illustrate and serveto explain the principles of various example embodiments.

FIG. 1 is a simplified diagram illustrating an electronic communicationssystem in which various implementations described herein may bepracticed.

FIG. 2 is a block diagram illustrating the components of an electroniccommunications device that may be used in conjunction with theelectronic communications system of FIG. 1.

FIG. 3 is a block diagram of structures configured to perform one ormore operations, consistent with the disclosed embodiments.

FIG. 4 is a block diagram illustrating an example framework that may beused in conjunction with the electronic communications system of FIG. 1.

FIG. 5 is a flow chart illustrating an example process for providingdescriptive information, in accordance with embodiments of the presentdisclosure.

FIG. 6 is a screen shot illustrating an example graphical user interface(GUI) feature for initiating a communications sessions according withembodiments of the present disclosure.

FIGS. 7-19 are additional screen shots illustrating GUI features forinitiating a communications sessions according with embodiments of thepresent disclosure.

DETAILED DESCRIPTION

Reference will now be made in detail to example embodiments implementedaccording to the present disclosure, the examples of which areillustrated in the accompanying drawings. Wherever possible, the samereference numbers will be used throughout the drawings to refer to thesame or like parts.

FIG. 1 shows an example of an electronic communications system 100 inwhich various implementations of disclosed embodiments are practiced.Electronic communications system 100 can be, for example, a telephonysystem such as a hosted Private Branch Exchange (PBX) platform thatprovides voice and/or video over IP, fax services, etc. Electroniccommunications system 100 may include a plurality of communicationsdevices, such as, a server 110 and one or more terminal devices 120operatively connected to a communications network 115. Server 110 may becommunicatively coupled with terminal devices 120 by one or morecommunications links (described below) of network 115 and may manage oneor more communications sessions between different terminal devices 120.The term “server” refers to a device having storing and processingcapabilities. The term “communications session” refers to any one-way ortwo-way exchange of information between two or more electroniccommunications devices such as terminal devices 120. A communicationssession may include data, voice, video, and multimedia communicationssessions, or any other type of data exchanges, for example, textmessaging. Server 110 may include or be connected to various networkcomputing resources (for example, servers, routers, switches, networkconnections, storage devices, etc.) necessary to support the servicesprovided by electronic communications system 100. In one example, server110 may be a generic server that provides services, such as emails,chats, and voice and/or video over IP services. In another example,server 110 may be a dedicated server for providing recipients withinformation regarding communications sessions.

FIG. 1 further shows different types of terminal devices 120. Terminaldevices 120 represent electronic communications devices that cancommunicate with each other and/or with server 110. Terminal device 120may include, for example, a smartphone; wearable devices such as asmartwatch or smartglasses; a tablet; an e-Reader; a laptop; a desktopcomputer; a voice over Internet Protocol (VoIP) phone; ateleconferencing device; a videoconferencing device; a set top box; agaming console; etc. Reference below to specific types of terminaldevices should not be construed to limit the scope of the presentdisclosure.

Consistent with embodiments of the present disclosure, server 110provides services to corresponding users or subscribers associated withterminal devices 120. It is noted that the terms “user,” “subscriber,”“caller,” “callee,” and “recipient” are used in the interest of brevityand may refer to any of a variety of entities that may be, for example,a person, an organization, an organizational role within anorganization, a group within an organization, etc. For example, a usermay be a caller in a voice dialing or video conferencing system, or anetwork subscriber sending a text message in a text messagingapplication. A recipient may be a callee in a voice dialing or videoconference system, or a network subscriber receiving a text message in atext application.

In some embodiments, a user may use terminal device 120 to initiatedifferent types of communications sessions with one or moreparticipants. For example, terminal device 120 may be used to transmitor receive different types of data or messages (e.g., audio messages,video messages, or text messages) to or from server 110. As mentionedabove, server 110 and the terminal devices 120 are communicativelycoupled via a plurality of communications links of network 115. It isunderstood that any data transmission may occur in cooperation withnetwork 115, which herein refers to any or all of the systems involvedin providing between two or more communications devices. For example,communications network 115 may include, without limitation, a cellulartelephone system, the Internet, a satellite communication system, widearea network (WAN), local area network (LAN), wireless local areanetwork (WLAN), virtual network, or telecommunications network. Thecommunications links may be wired, wireless, or both, and may bedynamically assigned based on the type of communications session and theload in each communications link. For example, a communications sessionbetween terminal device 120 and server 110 may start using cellular linkand once the user in proximity to a known WLAN access point, it maycontinue using a WLAN link.

FIG. 2 illustrates the components of an example electroniccommunications device 200. The term “electronic communications device”refers to any device configured to transmit and receive data by wired orwireless transmission. For example, electronic communications device 200may include, but is not limited to, server 110 and terminal device 120.Electronic communications device 200 may comprise a bus or any othercommunication mechanism for interconnecting subsystems and components.As shown in FIG. 2, electronic communications device 200 includes aprocessing device 205, a memory device 210, a communication interface215 (for example, a modem, Ethernet card, or any other interfaceconfigured to exchange data with a communications network), an inputdevice 220 (for example, keyboard, touch screen, a microphone, acamera), and an output device 225 (for example, a speaker or a display).The various components in electronic communications device 200 may becoupled by one or more communication buses or signal lines. One skilledin the art will appreciate that the configuration of electroniccommunications device 200 may have numerous variations andmodifications. Some electronic communications devices 200 may includeadditional components (e.g., a power source, a GPS, and varioussensors), while other electronic communications devices 200 may includefewer components (e.g., no output device 225). The configuration shownin FIG. 2 should not be considered essential for the operation ofelectronic communications device 200.

Processing device 205, shown in FIG. 2, executes computer programs,applications, methods, processes, or other software to performembodiments described in the present disclosure. The term “processingdevice” refers to any physical device having an electric circuit thatperforms a logic operation. For example, the processing device mayinclude one or more integrated circuits, microchips, microcontrollers,microprocessors, all or part of a central processing unit (CPU),graphics processing unit (GPU), digital signal processor (DSP), fieldprogrammable gate array (FPGA), or other circuits suitable for executinginstructions or performing logic operations. In some embodiments,processing device 205 may be associated with a software product storedon a memory device 210 or a non-transitory computer readable medium. Asused herein, a non-transitory computer-readable storage medium refers toany type of physical memory on which information or data readable by atleast one processor can be stored. Examples include random access memory(RAM), read-only memory (ROM), volatile memory, nonvolatile memory, harddrives, CD ROMs, DVDs, flash drives, disks, and any other known physicalstorage medium. The terms “memory” and “computer-readable storagemedium,” may refer to multiple structures, such a plurality of memoriesor computer-readable storage mediums located at electroniccommunications device 200 or at a remote location. Memory device 210 ora computer-readable storage medium can store instructions for executionby processing device 205, including instructions for causing theprocessing device 205 to perform steps consistent with embodiments ofthe present disclosure herein.

FIG. 3 is a block diagram illustrating structures configured to performone or more operations, consistent with the disclosed embodiments. Asshown in FIG. 3, electronic communications device 200 further includesan interface structure 302, an analysis structure 304, a communicationstructure 306, and a transmission structure 308. The structures may becoupled by one or more communication buses or signal lines. Thedisclosed embodiments are not limited to any particular configuration ofelectronic communications device 200. In some embodiments the structuresof FIG. 3 may be part of processing device 205.

In one embodiment, interface structure 302 receives from a user an inputselection for use in connection with a communications session. The inputselection may include selection of content (e.g., a document, an email,information on a website, and more) and selection of contact information(a username, a phone number, and more). One example of a GUI implementedin electronic communications system 100 is illustrated in FIG. 6.Analysis structure 304 determines information based on selected content.In some embodiments, the determined information may be regarding aprevious exchanged communication session. This information may includedescriptive information or information from (or derived from) theprevious exchanged communication session. It may be associated with asubject line, a title, or a summary, for example. Analysis structure 304may analyze the selected content as the input selection is beingreceived, or after receipt of the input selection.

Consistent with some embodiments, analysis structure 304 may uselinguistic analysis techniques to analyze and determine the descriptiveinformation of the selected content. The linguistic analysis techniquesmay be those known in the art, such as semantic-based voice or textrecognition, vector space analysis, rule-based analysis, statisticalanalysis, or other known techniques. In one embodiment, analysisstructure 304 recognizes individual words, phrases, and sentences in theselected content, based on voice recognition techniques or OpticalCharacter Recognition (OCR) techniques. Analysis structure 304 thendetermines the descriptive information of the selected content byapplying natural language processing techniques to the recognized words,phrases, and sentences. For example, analysis structure 304 maydetermine the subject of selected content based on the identified words,phrases, and/or sentences.

Consistent with other embodiments, analysis structure 304 may observedetails from metadata information associated with the selected content,and use these details in determining the descriptive information. In oneexample, when the selected content is a file or a document, the selectedcontent may already contain descriptive information stored in adedicated structure (e.g., a title field) as part of the file format.The retrieved details may be used as at least part of the descriptiveinformation. In another example, when the selected content may be anHTML document, the HTML document structure may support a title tag thatprovides a meaningful indication of the nature of the document'scontents. Furthermore, HTML document formats often support othermetadata information, such as keyword and description meta tags.Therefore, according to some embodiments, analysis structure 304 mayretrieve such information when the selected content is a document orfile whose format supports descriptive information and that containssuch information.

In some embodiments, analysis structure 304 may convert the formatand/or size of the selected content to derive the associated descriptiveinformation. For example, when the selected content is a document andthe descriptive information is a subject line of an emailcorrespondence, determining the descriptive information may includeconverting the formatting of the document to a predefined format,identifying key terms in the document, selecting one or more key terms,composing a subject line from the selected key terms.

In other embodiments, analysis structure 304 may derive the associateddescriptive information from multimedia content such as images, audioinformation, as well as the video information. For instance, analysisstructure 304 may analyze audio information as well as video informationof a selected portion of a video message to determine the content andcontext of the video message. For the audio information, analysisstructure 304 may apply the linguistic analysis techniques as discussedabove, and for the video information, analysis structure 304 may applyimage analysis techniques known in the art, such as image filtering,computer vision, pattern recognition, etc. Accordingly, based on theanalysis of the video information, analysis structure 304 may identify aface of the person in the video, a motion of the person in the video, abackground of the video, etc. The identified audio information and videoinformation may be used by analysis structure 304 to determine thedescriptive information of the video message. For example, electroniccommunications device 200 may use a camera (as input device 220) toinitiate a communications session about something that the user can see,such as a skilled worker in the field diagnosing a problem with somemachinery or electrical wiring. The user may point the camera ofelectronic communications device 200 at the subject of his or herinvestigation and then elect to communicate with a peer or supervisorabout what their camera captures. Analysis structure 304 may treat thecaptured image data as the selected content and use computer vision toidentify the objects or structure that are being captured. Thereafter,analysis structure 304 may use the identified objects or structure inthe image data to determine the descriptive information.

In some embodiments, the analysis structure 304 determines the urgencyor importance of the selected content. For example, the analysisstructure 304 determines that a selected content relating to a portionof a chat exchange between various participants includes a task thatrequires an immediate response, and includes the urgency level forcompletion of the task in the subject line of an email correspondencesent, for example by the transmission structure 308, to a device 120associated with a user tasked with completion of the request. In someexample embodiments, the urgency or importance level is presented as anotification displayed on device 120.

Communication structure 306 initiates a communications session with atleast one terminal device associated with a particular recipient, basedon contact information associated with the input selection. The term“contact information” refers to any information that corresponds to theparticular recipient and that may be considered relevant for contacting,accessing, or communicating with the particular recipient. Examples ofcontact information may include one or more of the following: a name, animage, a phone number, a fax number, a mobile phone number, an emailaddress, user names in different services, an IP address, and more. Insome embodiments, memory device 210 stores the contact information,which may include a plurality of profiles associated with the same user.Additionally, communication structure 306 may retrieve at least part ofthe contact information from other sources, such as other devices incommunication with communications network 115 or a contact database. Forexample, communication structure 306 may receive the contact informationfrom a social network account (for example, Facebook® or LinkedIn®) ofthe same user. In this case, communication structure 306 may compile acombined contact list based on the contact information retrieved fromdifferent sources.

Transmission structure 308 transmits data, including the determinedinformation, to the at least one terminal device associated with theparticular recipient. For example, the transmitted data may includedescriptive information of selected content such as previously exchangedcommunication(s). The transmitted data may also include at least onedetail regarding an additional communications session between the userand the particular recipient. Consistent with the present disclosure,the transmitted data may help the particular recipient understand theuser's purpose in initiating the additional communications session.

FIG. 4 illustrates an example framework consistent with disclosedembodiments. In this example, the framework is an architecturalorganization that can be implemented in software, hardware, or acombination thereof. The framework allows a user to select content and arecipient, and provides descriptive information of the selected contentto the selected recipient. The framework consists of three layers: afirst layer 402, a second layer 404 and a third layer 406. The firstlayer 402 manages the user input selection. The second layer 404 managesthe determination of the descriptive information. The third layer 406manages the transmission of the descriptive information to the selectedrecipient. All three layers can accept data inputs 408, 410, 412 fromthe user through a data input application programming interface (API)414. Examples of GUIs illustrating how the framework may be implementedare provided with reference to FIGS. 6-19 as later described herein.

First layer 402 includes a contact selector 416 that manages theselection of one or more recipients. Contact selector 416 may haveaccess to an internal contact database 420, an external contact database422, and an image/voice database 424. After receiving an input selectionfrom the user, contact selector 416 accesses databases 420, 422, and 424to identify one or more communication means associated with the selectedrecipient (e.g., phone number, email address, user name, and more).Contact selector 416 may send the one or more communication means to amessage generator 444 in third layer 406.

First layer 402 may also include a content selector 418 that manages theselection of the content. Content selector 418 may have access to a filebrowser 426, internet browser 428, and user interface 430. In oneexample, content selector 418 may use file browser 426 to identify theselected content. The term “selected content” refers to any type ofinformation representable in electronic form. Examples of selectedcontent may include information from a document, information from a Webpage, information from a spread sheet, an image, a calendar event, atext file, an audio file, a video file, a uniform resource locator(URL), and more. Content selector 418 may direct the selected content toone or more engines in second layer 404 based on the type of theselected content.

In second layer 404, descriptive information may be determined from theselected content. The selected content may enter to one or more of thefollowing engines: a linguistic engine 432, an OCR engine 434, a voicerecognition engine 436, an image recognition engine 438, and a metadataretrieval engine 440. In one embodiment, the selected content passesthrough one or more engines. For example, assuming the selected contentis a portable document format (PDF) file with pictures and writing.Metadata retrieval engine 440 may identify the person who created thePDF file, image recognition engine 438 may recognize the identity of thepeople in the pictures, OCR engine 434 may process the writing intoreadable text, and linguistic engine 432 may recognize individual words,phrase, and sentences in the PDF file. The information output from oneor more of the engines may be entered to a descriptive informationgenerator 442. In one embodiment, descriptive information generator 442may prioritize the information according to predetermined rules (e.g.,include the identity of the person who created the document only ifhe/she is included in the user's contacts list) and select thedescriptive information to send to message generator 444. In anotherembodiment, descriptive information generator 442 may receive a feedbackfrom the user regarding the information to send the selected recipient.

Third layer 406 includes message generator 444 that assemble and forwardthe descriptive information to the selected recipient using one or moreof the following applications: a text application 446, a voicemailapplication 448, an email application 450, a chat application 452, anotification, and a calendar application 454. Message generator 444 mayuse the information received from contact selector 416 regarding theselected recipient's communication means. In addition, message generator444 may receive a feedback from the user regarding which application touse for transmitting the descriptive information. Alternatively, messagegenerator 444 may obtain a preferable communication mode from internaldatabase 420 that stores contact information. After the message istransmitted, a session generator 456 may (automatically or afterreceiving indication from the user) initiate a communications sessionwith the selected recipient.

In one embodiment contact selector 416 may use information retrieved bycontent selector 418 to provide a recommended list of potential contactsfor a communications session about a selected content. For example, auser may have questions about a certain document selected using filebrowser 426, but the user may not know who would be the best person todiscuss with about the document. Therefore, upon receiving an indication(e.g., activating a designated button, highlighting specific text,selecting a document, and more) from the user, contact selector 416 mayaccess databases 420, 422, and 424 to provide the user with a list ofpotential recipients. In one example, internal database 420 may storeinformation about who may have the best knowledge of the subject of theselected content. In some embodiments, the user may invoke a contextualmenu for the selected item (e.g., a Web page, a document, and more). Thecontextual menu may include an option for “contacts recommendation.”Upon activating this option contact selector 416 may recommend the userone or more potential contacts with whom to discuss the item.

In a related embodiment, contact selector 416 may determine whichcontacts to include in the recommended list based on information derivedby engines 432-440. In one example, where the selected content is adocument, metadata engine 440 may identify one or more individuals thathave participated in the creation, editing, or reviewing of thedocument. Metadata engine 440 may also identify the individuals thathave accessed or read the document most recently/frequently and/orthoroughly. In a different example, when the selected content is adocument being versioned in a source control system, contact selector416 can recommend users with whom to communicate about the documentbased on the commit history for the document, and even commits relatingto a specific selected portion of the document.

In yet another related embodiment, message generator 444 may determine apreferred mode of communication to use when initiating a communicationssession with the selected contact based on the information derived byengines 432-440. In one example, where the selected content is a videostream captured by a camera of the terminal device 120, imagerecognition engine 438 may identify an object or an individual in thedata stream. Accordingly, message generator 444 may initiate a videochat with the selected contact, and send to the selected contact a shortvideo with the identified object or an individual. Additionally, messagegenerator 444 may adjust the preferred mode of communication to use withthe selected contact based on information on the selected contact. Forexample, if contact selector 416 determines that the selected contact isnot available to a video chat or generally prefers not to have videochats, message generator 444 may initiate a phone call with the selectedcontact, and send to the selected contact an image of the identifiedobject or an individual.

The preceding disclosure about the framework of FIG. 4 is explanatory bynature and various modifications and changes may be made thereto. Insome embodiments, the framework may be adapted to be implemented byelectronic communications device 200.

FIG. 5 depicts an example process 500 for providing recipients withdescriptive information regarding communications sessions, in accordancewith example embodiments of the present disclosure. The steps of process500 may be performed by electronic communications device 200 of FIG. 3,which may be server 110 or one or more terminal devices 120 depicted inFIG. 1. In the following description, reference is made to certaincomponents of FIGS. 1 and 2 for purposes of illustration. It will beappreciated, however, that other implementations are possible and thatother components may be utilized to implement the example method.

At step 502, the communications device 200 receives from a user an inputselection for use in connection with a communications session. The inputselection may include selection of content and selection of contactinformation. The following description of an example scenario, which isalso illustrated in FIG. 6, serves to explain different aspects ofprocess 500: User John Smith chats with his wife Jane Smith about theirplans for the holiday weekend. Thereafter, John wants to invite hiscoworker Ally Rose for a holiday dinner. In some embodiments, thereceived input selection may include dragging a selected content anddropping it on an icon representing a contact. For example, John mayselect a related chat snippet (e.g., the portion of the chat about aholiday dinner) and drop it on an icon representing the user Ally. Insome embodiments, the input selection may further include a selection ofa type of the communications session. For example, dropping the selectedcontent on the icon of Ally may cause a pop-up menu of options todisplay. The option includes different types of communications sessions,such as initiate a chat session, initiate a phone call, send an e-mail,send an SMS and/or MMS, etc. In this way the user John may select tosend Ally a text message to her terminal device 120.

As mentioned above, process 500 may be executed by server 110 or byterminal device 120. When step 502 is carried out by server 110, forexample, receiving the input selection may include receiving the inputselection from terminal device 120 associated with the user. Forexample, server 110 may receive data reflecting the input selection fromterminal device 120 via communications network 115. While, when step 502is carried out by terminal device 120, receiving the input selection mayinclude receiving the input selection from input device 220. Forexample, terminal device 120 may receive signals reflecting the inputselection from a touchscreen. At step 504, electronic communicationsdevice 200 may use selected content to determine descriptiveinformation. In some embodiments, the selected content may be associatedwith another communications session with a different recipient that maybe attached or appended to selected content. For example the selectedcontent may include one or more of the following: an email, a voicemail,and a chat snippet. In the example scenario above, the selected contentto be used in determining the descriptive information for Ally was achat snippet between John and Jane.

In some embodiments, the selected content may be previously stored atmemory device 210. Alternatively, when electronic communications device200 receives the input selection, the selected content may be stored atmemory device 210. In some embodiments, the selected content may be usedto determine descriptive information. The term “descriptive information”may refer to any form of data derivable from the selected content thatincludes one or more details describing the selected content. Thefollowing non-limiting examples illustrate possible connections betweenthe selected content and the descriptive information: when the selectedcontent is a document, the descriptive information may be a summary ofthe document; when the selected content is an email, the descriptiveinformation may be a subject line and an associated date; when theselected content is a voicemail, the descriptive information may be atranscript of the voicemail; and, when the selected content is a chatsnippet, the descriptive information may be a title and the identity ofthe participants in the chat; when the selected content is a calendarinvitation, the descriptive information may be the subject of themeeting; and when the selected content is a video file, the descriptiveinformation may be part of the video played back at a higher speed. Inthe example scenario above, where the selected content was a chatsnippet between John and Jane, the descriptive information may be“Holiday dinner invitation.”

At step 506, electronic communications device 200 uses contactinformation associated with the input selection to initiate acommunications session with at least one terminal device 120 associatedwith a particular recipient. The input selection may include a selectionof the type of communications session. The type of communicationssession may be a video communications session, an audio communicationssession, a textual communications session, or a combination thereof. Inaddition, the type of communications session may include the type ofservice used for initiating the communications session. For example, atextual communications session may be initiated via any of the followingservices: email, cellular text message, WhatsApp Messenger, Facebookchat, Google Hangout, and more. In other embodiments the type ofcommunications session being initiated may be determined by presenceinformation of the particular recipient. Presence information may bedetermined by obtaining presence information from one or more presenceservices. The presence services can include a communication application,a social network service, a professional network service, and/or apresence module of the various mobile applications. In the exampleabove, when John places (e.g. drops) the selected content on Ally's iconhe selects her as the particular recipient and electronic communicationsdevice 200 initiates a chat session with Ally because the presenceinformation indicate that Ally in currently using her desktop computer.

At step 508, electronic communications device 200 may transmit dataincluding the descriptive information to the particular recipient. Theformat of the descriptive information being transmitted may depend onthe type of the communications session and/or the presence information.The format of the descriptive information may include a visual format(e.g., plain text), audio format (e.g., narrated text), or other typesof format. For example, if Ally's presence information indicates thatshe is currently driving the descriptive information may be transmittedin an audio format. In some embodiments, the transmitted data includesthe descriptive information and/or at least one detail regarding anadditional communications session between the user and the particularrecipient. The at least one detail may include the name of the user, thetype of communications session, a timing indicator, or any other detailrelated to the additional communications session. In the examplescenario above, after John dropped the selected content on Ally's icon,Ally may receive the notification message: “John Smith is about to callabout: Holiday dinner invitation.”

Consistent with embodiments of the present disclosure, the data may betransmitted to at least one terminal device 120 associated with aparticular recipient. In some cases, the particular recipient may havemore than one terminal device 120, for example, a smartphone and adesktop computer. Accordingly, electronic communications device 200 maybe configured to transmit the data to some or all of the terminaldevices 120 associated with the particular recipient. For example,electronic communications device 200 may transmit the notificationmessage both to Ally's smartphone and computer. In some embodiments,electronic communications device 200 may be configured to initiate thecommunications session with a first terminal device 120 associated withthe particular recipient and to initiate the additional communicationssession with a second terminal device 120 associated with the particularrecipient. For example, electronic communications device 200 maytransmit the notification message to Ally's computer, and initiate aphone call with Ally's smartphone. In other examples, the descriptiveinformation can be broadcasted to plurality of recipients.

Communications device 200 may, in some embodiments, initiate theadditional communications session with the at least one terminal device120 associated with the particular recipient (step 510). With thebenefit of the previously transmitted descriptive information, theadditional communications session may take place when the particularrecipient knows the user's purpose in initiating the communicationssession. Therefore, the particular recipient may be able to direct theadditional communications session to another person's associated device120, a person who would be more appropriate for the subject matter ofthe call.

In some embodiments, electronic communications device 200 may initiatethe additional communications sessions, upon receiving confirmationsfrom particular recipients that they are ready for the additionalcommunications sessions. In other embodiments, electronic communicationsdevice 200 may initiate the additional communications sessionautomatically upon receiving a confirmation that the at least oneterminal device 120 received the descriptive information. Alternatively,electronic communications device 200 may receive an indication (e.g.,from an element in communications network 115) for non-delivery of thedata that includes the descriptive information (e.g., a failure of anattempt to deliver the notification message, or an expiration of a timeperiod for making attempts to deliver the notification message). Byreceiving such indication, the electronic communications device 200 maypostpone initiating the additional communications session and retransmitthe data that includes the descriptive information. In otherembodiments, electronic communications device 200 may initiate theadditional communications session automatically upon receiving aconfirmation that the particular recipient had opened the descriptiveinformation. For example, electronic communications device 200 may sendthe particular recipient a notification message that includes thedescriptive information using a service that can provide confirmationsafter recipients open their messages.

As mentioned above, users may use electronic communications device 200to initiate communications sessions of different types. In someembodiments, the communications session including the descriptiveinformation may be a first type of communications session and theadditional communications session may be a second type of communicationssession. For example, electronic communications device 200 may send thenotification message as a text message to Ally informing her that Johnis about to contact her about a holiday dinner, and then to initiate avideo chat with Ally's smartphone terminal device 120. In otherembodiments, electronic communications device 200 may initiate thecommunications session and the additional communications sessionconcurrently. Such that the notification message may be provided to theparticular recipient substantially at the same time when the particularrecipient receives the request for a communications session. Forexample, Ally may receive a phone call from John, and together with theindication that John is calling, Ally's smartphone may indicate thatJohn is calling about a holiday dinner invitation.

At step 512, electronic communications device 200 may use the selectedcontent to generate a virtual voicemail. In one example, the virtualvoicemail may be generated by synthesizing voice audio from the text ofthe descriptive information using known text-to-speech technologies. Avirtual voicemail may be useful when the particular recipient does notanswer the attempt to initiate a communication session, or when the userprefers to send an automated audio message instead of a text message. Insome embodiments, the virtual voicemail may be generated from the textof the descriptive information (e.g., the subject of the communicationsession). In other embodiments, the virtual voicemail may be generatedfrom the selected content itself (e.g., a narrated version of the chatsnippet). In the example scenario above, if Ally does not answer herphone, electronic communications device 200 may receive a voicemailstating that John called about a holiday dinner invitation.

Further to the example scenario above, when Ally accesses or reviews hervoicemail through an audio interface, the descriptive information may beconverted to audio using known text-to-speech synthesis technologies.Alternatively, when Ally accesses or reviews her voicemail through atext interface, the descriptive information can simply be displayed astext (such as a banner or a notification) on a display of the terminaldevice 120. In addition, the descriptive information associated with theintended call may be displayed as supplemental information along withother details for a missed call. Having virtual voicemail messagesderived from automatically generated text may be easier and morereliable than transcribing regular recorded audio voicemail usingspeech-to-text technologies.

FIGS. 6-19 depict different types of GUI features according toembodiments of the present disclosure. The GUI features may beimplemented in electronic communications system 100 of FIG. 1 forproviding recipients with descriptive information. FIG. 6 depicts afirst example of a GUI feature that illustrates the example scenariodescribed above with reference to FIG. 5. FIGS. 7-13 depict a secondexample of a GUI feature that illustrates how user john_r can initiatecommunication sessions with user veeru_kumar when the selected contentis a chat snippet. FIGS. 14-16 depict a third example of a GUI featurethat illustrates how user john_r can initiate communication sessionswith user raj_p when the selected content is a document. FIGS. 17-19depict a fourth example of a GUI feature that illustrates how userjohn_r can initiate communication sessions with user raj_p when theselected content is a Web page. According to some embodiments, the GUIfeatures may be generated by server 110 for display at terminal device120 associated with the user. Alternatively, the GUI features may begenerated by terminal device 120 associated with the user. The user'sterminal device may present the GUI features through output device 225(e.g., a display) and interacts with the user through the GUI featuresas disclosed herein.

First Example of GUI

FIG. 6 depicts a GUI feature 600 based on the example scenario describedwith reference to FIG. 5. GUI feature 600 may include a contacts window602 having a search field 604 for the user to specify a name of contactto chat with. The user may also select a contact directly from the listof contacts. In the example shown in FIG. 6, the user had previouslyselected to chat with Jane Smith. Upon the user selection, a chat window606 was opened in which the user can communicate with the selectedcontact. GUI feature 600 may receive user input for the chat messagesthrough input device 220 (e.g., a keyboard, a touch screen, ormicrophone). In some embodiments, GUI feature 600 may further include acontextual menu that includes a “text-to-call” button 608 and a“file-to-call” button 610.

When the user activates “text-to-call” button 608 by selecting the iconshown, GUI feature 600 enables the user to select text by creating arange selection of text, drag the selected text, and drop the selectedtext on a particular recipient on contacts window 602. Thisdrag-and-drop operation uses conventional components of Windows andother known operating systems and interface controls. In this example,the selected text is part of an ongoing chat between the user and Jane,the user drags the selected text and drops it on an icon representingAlly. In other examples, the selected text may be part of a document,part of an email, part of a website, and more. When the user activates“file-to-call” button 610 by selecting the icon shown, GUI feature 600enables the user to browse and upload any type of file (e.g., datafiles, multimedia files, etc.) and select a particular recipient oncontacts window 602.

Another example for implementing embodiments of the present disclosuremay include selection of content using a right-click function over ahighlighted text, which may open a contextual menu that containsnumerous actions for the selection. Thereafter, electroniccommunications device 200 may receive an indication of the user'sselection of an action. For example, an action to initiate acommunications session relating to the selected content, an action tosummarize the selected content, an action to set a reminder regardingthe selected content, and more. In some embodiments, the user may beprovided with means to select a recipient for the communications session(e.g., using drop-down list or combo-box). Alternatively, one or morerecipients may be recommended by electronic communications device 200based upon the nature of the selected content and knowledge thatelectronic communications device 200 may have or may obtain regardingother users with an expertise in the selected content (such as a subjectmatter expert), or a relationship to the selected content (such as anoriginal author of the selected content, or a user who has collaboratedin its production. Other ways in which GUI feature 600 may receive aninput selection that includes a selected content to determinedescriptive information and contact information that identifies theparticular recipient are also within the scope of the presentdisclosure.

Second Example of GUI

FIGS. 7-13 depict a GUI feature 700 that illustrates how user john_rinitiates communication sessions when the selected content is a chatsnippet. In FIG. 7, user john_r wants to send part of a chatconversation to user veeru_kumar, who has been mentioned in the chat.First, user john_r selects the section of the conversation he would liketo send and starts dragging the selection to the contacts button.Hovering with the dragged chat snippet over the contacts button willactivate the “springy folder” action of the button. Thereafter, acontacts list may be revealed and user john_r can drop the dragged chatsnippet on the contacts list item for user veeru_kumar.

FIG. 8 depicts the contacts list that has been revealed during the dragoperation by the “springy folder” action of the contacts button. Asshown in FIG. 8, user john_r dragged the chat snippet to the contactslist item for user veeru_kumar. By dropping the chat snippet on an itemrepresenting user veeru_kumar, a communications session with userveeru_kumar will be initiated on the subject of the chat snippet.

FIG. 9 presents a dialog window 900 that opens once user john_r dropsthe dragged chat snippet onto the contacts list item representing userveeru_kumar. Dialog window 900 allows user john_r to select how he wouldlike to communicate with user veeru_kumar on the subject of the chatsnippet. The selected content of the chat snippet may be analyzed toidentify high value words and phrases, based upon an understanding ofthe areas of expertise of those involved in the chat. Thereafter,descriptive information may be automatically generated based on theselected content, for example, a subject for the communication. Asdepicted in the FIG. 9, user john_r still has the opportunity to editand modify the descriptive information in dialog window 900 beforeinitiating the communications session with user veeru_kumar. In thisexample, user john_r chose to communicate with user veeru_kumar by chat,and he selected to send the chat snippet as additional context to userveeru_kumar in the form of a chat snippet file.

FIG. 10 depicts GUI feature 700 from the perspective of userveeru_kumar, after the chat session has been initiated between userveeru_kumar and user john_r. The chat has been started with anotification message describing the subject of the chat, and a messageproviding a link by which user veeru_kumar may download the chat snippetfile to read through separately. In this embodiment, user veeru_kumarwas able to ascertain immediately from the descriptive information whatthe communication is about, since the salient words and phrases in thegenerated subject provided an effective cue to his memory. Even beforereading through the entire chat snippet, user veeru_kumar responds touser john_r with some preliminary advice.

FIG. 11 depicts an alternative type of dialog window 900. In thisexample, user john_r selected to communicate with user veeru_kumar byway of a phone call. By selecting phone as the mode of communication,additional options relevant to this mode of communication are presentedto user john_r. In this scenario, user john_r selected to have thegenerated descriptive information (e.g., the subject for thecommunication) to be transmitted to user veeru_kumar by way of anenhanced caller ID feature. The descriptive information may be displayedat user veeru_kumar's phone, alongside the information about caller userjohn_r. Furthermore, user john_r selected to have the chat snippet filesent to user veeru_kumar using the MMS protocol. Finally, user john_rselected that, if user veeru_kumar is not able to take the call, thatthe system will leave a voicemail message for user veeru_kumar. In someembodiments, a virtual voicemail may be generated from the text of thedescriptive information (e.g., the subject for the communication). Inother embodiments, the virtual voicemail may be generated from theselected content (e.g., the chat snippet).

FIG. 12 depicts an additional alternative type of dialog window 900. Inthis example, user john_r selected to communicate with user veeru_kumarby way of e-mail. By selecting e-mail as the mode of communication,additional options relevant to this mode of communication may bepresented to user john_r. In this case, user john_r selected to have thechat snippet transmitted to user veeru_kumar inline in the body of thee-mail message.

FIG. 13 depicts the e-mail that was automatically generated for userjohn_r enabling him to communicate with user veeru_kumar. As depicted inthe FIG. 13, the new e-mail may be pre-populated with the descriptiveinformation as the subject of the email and with the selected content inthe e-mail message body or an attachment therefor, in text and/or imageformat. However, user john_r can still modify the subject line ormessage body before choosing to send the e-mail.

Third Example of GUI

FIGS. 14-16 depict a GUI feature 1400 that illustrates how user john_rmay initiate communication sessions when the selected content is adocument. In FIG. 14, user john_r wants to communicate with user paul onthe subject of a specific document. The desired document may be selectedusing any way known in the art. For example, the desired document may belocated using his operating system's file manager application. Then thedesired document may dragged to the contacts list pane including userpaul, and dropped on an item representing user paul to initiate acommunications session with paul regarding the selected document.

FIG. 15 depicts a dialog window 900 that opens once user john_r dropsthe dragged document onto the contacts list item representing user paul.Dialog window 900 allows user john_r to select how we would like tocommunicate with paul on the subject of the selected document. Thesystem may use the appropriate file format reader for the type of theselected document in order to read the contents of the document, andgenerates descriptive information (e.g., the subject for thecommunication). Additionally, the Metadata engine 440 may obtain thedocument title from the document's metadata. User john_r can still editand modify the descriptive information in dialog window 900 beforeinitiating the communications session with user paul. In this example,user john_r chose to communicate with user paul by chat, and to send theselected document as additional context to paul in form of a downloadlink.

FIG. 16 depicts GUI feature 1400 from the perspective of user paul,after a chat session has been initiated between user paul and userjohn_r. The chat session has been started with a notification messagedescribing the subject of the chat, and a message providing a link bywhich user paul may download the document that user john_r had selected.User paul then proceeds to chat with user john_r about the selecteddocument.

Fourth Example of GUI

FIGS. 17-19 depict a GUI feature 1700 that illustrates how user john_rmay initiate communication sessions when the selected content is a Webpage. In FIG. 17 user john_r wants to communicate with user raj_p on thesubject of a specific Web page displayed in his Web browser application.By clicking on a designated icon in his Web browser application, userjohn_r may drag the selected URL to the contacts list item representinguser raj_p in the contacts list pane of his collaboration application.Dropping the dragged URL on the item representing user raj_p target willinitiate a communications session with user raj_p about the Web page.

FIG. 18 depicts another alternative type of dialog window 900 that mayopen once user john_r drops the Web URL onto the contacts list itemrepresenting user raj_p. Dialog window 900 allows user john_r to selecthow he would like to communicate with user raj_p on the subject of theselected Web page. The selected Web page may be analyzed to identify thedescriptive information. For example, the following objects may beconsidered: the HTML document's title tag, description meta tag, headerswithin the document's body, and other content from the specific Webpage. User john_r can still edit and modify the descriptive informationin dialog window 900 before initiating the communications session withuser raj_p. In this example, user john_r chose to communicate with raj_pby way of a phone call, and selected options for this communicationsimilar to those described with regards to FIG. 11. However, in thisinstance user john_r selected to schedule his phone call communicationat some time in the future by clicking the “Schedule” button.

FIG. 19 depicts an additional dialog window that opens once user john_rclicks the “Schedule” button. This additional dialog window allows userjohn_r to choose the date, time, and duration for his scheduled phonecall communication with user raj_p about the selected content (i.e., theWeb page). Upon confirming his and raj_p's scheduled options, the systemmay send an automated meeting invite to both user john_r and user raj_p.In one embodiment, the descriptive information may be used as thesubject for the meeting invite, and the message body of the invite mayinclude the dragged Web URL. Furthermore, a background scheduling agentof a telephony system may manage the initiation of the phone call at thescheduled time, calling both user john_r and user raj_p and connectingthem together in a call.

FIGS. 6-19 depict different types of GUI features that may be displayedpersonal computers. However, similar GUI features may be alsoimplemented on mobile devices, such as, a smartphone or a tablet. Forexample, a user may select or highlight interesting content from aweb-page using a long press. Thereafter, a pop-up menu of options canappear and one of the options may be generating a communications sessionabout the selected content.

In the preceding specification, various preferred embodiments have beendescribed with reference to the accompanying drawings. It will, however,be evident that various modifications and changes may be made thereto,and additional embodiments may be implemented, without departing fromthe broader scope of this disclosure as set forth in the claims thatfollow. The specification and drawings are accordingly to be regarded inan illustrative rather than restrictive sense.

For example, advantageous results still could be achieved if steps ofthe disclosed techniques were performed in a different order or ifcomponents in the disclosed systems were combined in a different manneror replaced or supplemented by other components. Although embodiments ofthe disclosure are illustrated using server 110, the embodimentsdescribed herein may also be implemented on individual terminal device120 without departure from the principle of the disclosure. Otherimplementations are also within the scope of the following exampleclaims.

Therefore, it is intended that the disclosed embodiments and examples beconsidered as examples only, with a true scope of the present disclosurebeing indicated by the following claims and their equivalents.

What is claimed is:
 1. A communications device, comprising: at least oneprocessing device configured to: receive an input selecting content of aprevious communications session with at least one first user; receive aninput selecting a second user different from the at least one firstuser; identify at least one object in the selected content to determineinformation descriptive for the selected content; initiate a newcommunications session with the second user; and transmit a message,including the descriptive information for the selected content, to thesecond user.
 2. The communications device of claim 1, wherein thecommunications device is a server, the input selection is received froma terminal device, and after receiving the input selection, the selectedcontent is stored at a memory device included in the server.
 3. Thecommunications device of claim 1, wherein the communications device is aterminal device, the input selection is received from an inputcomponent, and the selected content is stored at a memory deviceincluded in the terminal device.
 4. The communications device of claim1, wherein the information descriptive for the selected content isdetermined using a linguistic analysis and prioritized according topredetermined rules.
 5. The communications device of claim 4, whereinthe information descriptive for the selected content is prioritizedaccording to using predetermined rules.
 6. The communications device ofclaim 1, wherein a type of the new communications session is at leastone of a video communications session, an audio communications session,and a textual communications session, and the new communications sessionis a first type of communications session and the previouscommunications session is a second type of communications session otherthan the first type.
 7. The communications device of claim 1, whereinthe selected content of the previous communications session may includeat least one of the following: an electronic mail, a voicemail, and achat snippet.
 8. The communications device of claim 7, wherein when theselected content is an email, the descriptive information includes asubject line and an associated date.
 9. The communications device ofclaim 7, wherein when the selected content is a voicemail, thedescriptive information includes a transcript of the voicemail.
 10. Thecommunications device of claim 7, wherein when the selected content is achat snippet, the descriptive information for the selected contentincludes a title and the identity of the participants in the chat. 11.The communications device of claim 1, wherein the at least oneprocessing device is further configured to use the descriptiveinformation for the selected content to select a preferred mode tocommunicate with the second user based on the at least one objectidentified by one or more processing engines.
 12. The communicationsdevice of claim 1, wherein the selected content includes a portion of aprevious communications session associated with a plurality of firstusers.
 13. The communications device of claim 1, wherein the at leastone processing device is further configured to generate a voice messagethat includes an audible version of the information descriptive for theselected content; and transmit the voice message to the second user. 14.The communications device of claim 1, wherein the message is transmittedin the new communications session and the at least one processing deviceis further configured to initiate an additional communications sessionwith the second user upon receiving a confirmation that the second useropened the message.
 15. The communications device of claim 14, whereinof the additional communications session is a first type of at least oneof a video communications session, an audio communications session, anda textual communications session, and the new communications session isa second type of at least one of a video communications session, anaudio communications session, and a textual communications session,other than the first type.
 16. A method for providing recipients withinformation regarding communications sessions, the method comprising:receiving an input selecting content of a previous communicationssession with at least one first user; receiving an input selecting asecond user different from the at least one first user; identifying atleast one object in the selected content to determine informationdescriptive for the selected content; initiating a new communicationssession with the second user; and transmitting a message, including thedescriptive information for the selected content, to the second user.17. The method of claim 16, wherein receiving the input selectionincludes creating a range selection of text, dragging the selected rangeand dropping it on an icon representing the second user.
 18. The methodof claim 16, wherein the input selection includes a selection of a typeof the new communications session between a video communicationssession, an audio communications session, and a textual communicationssession.
 19. The method of claim 16, wherein the transmitted messageincludes a requested type of an additional communications sessionbetween a user and the second user.
 20. The method of claim 19, whereinthe additional communications session is a first type of at least one ofa video communications session, an audio communications session, and atextual communications session, and the new communications session is asecond type of at least one of a video communications session, an audiocommunications session, and a textual communications session, other thanthe first type.
 21. A computer program for providing recipients withinformation regarding communications sessions stored in a non-transitorycomputer-readable medium and executable by at least one processor, thecomputer program product including instructions for causing the at leastone processor to execute a method comprising: receiving an inputselecting content of a previous communications session with at least onefirst user; receiving an input selecting a second user different fromthe at least one first user; identifying at least one object in theselected content to determine information descriptive for the selectedcontent; initiating a new communications session with the second user;and transmitting a message, including the descriptive information forthe selected content, to the second user.